package org.wdcode.common.log;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.wdcode.common.constants.StringConstants;

/**
 * 用于记录各种日志以及打印DEBG信息等<br/>
 * @author WD
 * @since JDK6
 * @version 1.0 2009-03-01
 */
public final class WdLogs {
	// common loggin日志对象
	private final static Log	LOG;

	// 静态块 初始化
	static {
		// 生成本类Log日志对象
		LOG = LogFactory.getLog(StringConstants.EMPTY);
	}

	/**
	 * 使用debug打印日志
	 * @param info 日志信息
	 */
	public final static void debug(Object info) {
		LOG.debug(info);
	}

	/**
	 * 使用info打印日志
	 * @param info 日志信息
	 */
	public final static void info(Object info) {
		LOG.info(info);
	}

	/**
	 * 使用warn打印日志
	 * @param info 日志信息
	 */
	public final static void warn(Object info) {
		LOG.warn(info);
	}

	/**
	 * 使用error打印日志
	 * @param info 日志信息
	 */
	public final static void error(Object info) {
		LOG.error(info);
	}

	/**
	 * 使用fatal打印日志
	 * @param info 日志信息
	 */
	public final static void fatal(Object info) {
		LOG.fatal(info);
	}

	/**
	 * 使用debug打印日志
	 * @param t 异常信息
	 */
	public final static void debug(Throwable t) {
		LOG.debug(StringConstants.EMPTY, t);
	}

	/**
	 * 使用info打印日志
	 * @param t 异常信息
	 */
	public final static void info(Throwable t) {
		LOG.info(StringConstants.EMPTY, t);
	}

	/**
	 * 使用warn打印日志
	 * @param t 异常信息
	 */
	public final static void warn(Throwable t) {
		LOG.warn(StringConstants.EMPTY, t);
	}

	/**
	 * 使用error打印日志
	 * @param t 异常信息
	 */
	public final static void error(Throwable t) {
		LOG.error(StringConstants.EMPTY, t);
	}

	/**
	 * 使用fatal打印日志
	 * @param t 异常信息
	 */
	public final static void fatal(Throwable t) {
		LOG.fatal(StringConstants.EMPTY, t);
	}

	/**
	 * 使用debug打印日志
	 * @param t 异常信息
	 */
	public final static void debug(Object info, Throwable t) {
		LOG.debug(info, t);
	}

	/**
	 * 使用info打印日志
	 * @param t 异常信息
	 */
	public final static void info(Object info, Throwable t) {
		LOG.info(info, t);
	}

	/**
	 * 使用warn打印日志
	 * @param t 异常信息
	 */
	public final static void warn(Object info, Throwable t) {
		LOG.warn(info, t);
	}

	/**
	 * 使用error打印日志
	 * @param t 异常信息
	 */
	public final static void error(Object info, Throwable t) {
		LOG.error(info, t);
	}

	/**
	 * 使用fatal打印日志
	 * @param t 异常信息
	 */
	public final static void fatal(Object info, Throwable t) {
		LOG.fatal(info, t);
	}

	/*
	 * 私有构造，禁止外部实例化
	 */
	private WdLogs() {}
}
